let logoUrl;
$(function () {
    layui.use(['form', 'layer','jquery','upload'],
        function() {
            $ = layui.jquery;
            var form = layui.form,
                layer = layui.layer;
            let upload = layui.upload;


            //自定义验证规则
            form.verify({
                name:[/^[\u4E00-\u9FA5A-Za-z0-9]+$/,"公司名只能包含中文、英文或数字"], //中文、英文、数字但不包括下划线等符号
                landLine: [/\d{3}-\d{8}|\d{4}-\{7,8}/,"座机号格式不正确"],
                mobilePhone: [/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/,"手机号格式不正确"],
                zipCode: [/[1-9]\d{5}(?!\d)/,"邮政编码为6位数字"],
                fax:[/\d{3}-\d{8}|\d{4}-\d{7}/,"传真格式不正确"],
                address:[/^[\u4E00-\u9FA5A-Za-z0-9]+$/,"地址只能包含中文、英文或数字"], //中文、英文、数字但不包括下划线等符号
            });

            //常规使用 - 普通图片上传
            var uploadInst = upload.render({
                elem: '#test1'
                , url: '/upload' //此处用的是第三方的 http 请求演示，实际使用时改成您自己的上传接口即可。
                , before: function (obj) {
                    //预读本地文件示例，不支持ie8
                    obj.preview(function (index, file, result) {
                        $('#image').attr('src', result); //图片链接（base64）
                    });
                }
                , done: function (res) {
                    // console.log(res)
                    $("#logo").val(res.data.src);
                    logoUrl = res.data.src;
                    //如果上传失败
                    if (res.code > 0) {
                        return layer.msg('上传失败');
                    }

                }

            });

            //得到id后，根据id查询数据库，赋值给前端表单
            let lawyerId = sessionStorage.getItem("companyId")
            $.ajax({
                url:'/back/FindCompanyInfoById',
                data:{id:lawyerId},
                type: 'get',
                dataType: 'json',
                success: function (res) {
                    //赋值
                    console.log(res);
                    logoUrl = res.data.logo;//得到通过id从数据库中查询得到的图片地址
                    setData(res.data);
                }
            })
            function setData(data) {
                form.val('form', {
                     "name": data.name // "name": "value"
                    , "landLine": data.landLine
                    , "mobilePhone": data.mobilePhone
                    , "email": data.email
                    , "address": data.address
                    , "fax": data.fax
                    , "zipCode": data.zipCode
                    , 'remark': data.remark
                });
                $("#image").attr("src",data.logo);
                $("input[type=radio][name=enable][value=" + data.enable + "]").attr("checked", "checked");
                form.render();//重新渲染表单
            }
            //监听提交
            form.on('submit(update)',
                function(data) {
                    data = data.field;
                    // console.log(data);
                    data.logo = logoUrl;//将前端图片地址传给后台
                    //根据id修改
                    data.id = sessionStorage.getItem("companyId")//修改servlet里没有传id，需获取从user-list.js传过来的id
                    $.ajax({
                        url:'/back/CompanyInfoUpdate',
                        data:data,
                        type:'post',
                        dataType:'json',
                        success: function (res) {
                            if (res.count>0){
                                //发异步，把数据提交给java
                                layer.alert(res.msg, {
                                        icon: 6
                                    },
                                    function() {
                                        //关闭当前frame
                                        xadmin.close();

                                        // 可以对父窗口进行刷新
                                        xadmin.father_reload();
                                    });
                            }else {
                                layer.alert(res.msg)
                            }
                        }
                    })
                    return false;
                });

        });
})